package com.esun.payment_api.mapper;

import com.esun.common.bean.PageRequest;
import com.esun.payment_api.bean.InvTaskDetailBean;
import com.esun.payment_api.domain.InvFormTask;
import com.esun.payment_api.domain.InvFormTaskExample;
import java.util.List;

import com.esun.payment_api.domain.SysDictContract;
import com.esun.payment_api.dto.PInvInsParam;
import org.apache.ibatis.annotations.Param;

public interface InvFormTaskMapper {
    long countByExample(InvFormTaskExample example);

    int deleteByExample(InvFormTaskExample example);

    int deleteByPrimaryKey(Short id);

    int insert(InvFormTask record);

    int insertSelective(InvFormTask record);

    List<InvFormTask> selectByExample(InvFormTaskExample example);

    InvFormTask selectByPrimaryKey(Short id);

    int updateByExampleSelective(@Param("record") InvFormTask record, @Param("example") InvFormTaskExample example);

    int updateByExample(@Param("record") InvFormTask record, @Param("example") InvFormTaskExample example);

    int updateByPrimaryKeySelective(InvFormTask record);

    int updateByPrimaryKey(InvFormTask record);

    //存储过程
    void pInvInsTask(@Param("param") PInvInsParam param);

    int deleteById(Integer id);

    InvTaskDetailBean getById(@Param("id") Integer id);

    //获取可关联合同列表
    List<SysDictContract> getSelectContractList(PageRequest pageRequest);
}